package main

import (
	"fmt"
	"io"
)
/*
  字符移位
小Q最近遇到了一个难题：把一个字符串的大写字母放到字符串的后面，各个字符的相对位置不变，且不能申请额外的空间。
你能帮帮小Q吗？

输入描述:
输入数据有多组，每组包含一个字符串s，且保证:1<=s.length<=1000.

输出描述:
对于每组数据，输出移位后的字符串。

输入例子1:
AkleBiCeilD

输出例子1:
kleieilABCD
 */

func main() {
	/*
		A 65 Z 90  a 97  z 122
	*/
	var str string
	for {
		_, err := fmt.Scan(&str)
		if err == io.EOF {
			break
		}
		// 插入排序的思想   涉及到修改字符串
		strByte := []byte(str)
		count := 0
		for i := range strByte {
			if strByte[i] >= 97 && strByte[i] <= 122 {   // 小写字母
				temp := strByte[i]  // 保存这个小写字母
				for j := i; j > count; j -- {
					strByte[j] = strByte[j - 1]
				}
				strByte[count] = temp
				count ++
			}

		}
		fmt.Println(string(strByte))

	}
}
